package com.chenfan.mcn.model.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.alibaba.fastjson.annotation.JSONField;
import com.chenfan.mcn.constant.McnConstant;
import com.chenfan.mcn.constant.NumberFormatCst;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 直播红人结算单明细
 * @author wulg
 * @date 2023/3/22
 */
@Data
public class LiveStarSettlementCommodityVO  implements Serializable {

    private static final long serialVersionUID = 2808460134080237230L;

    private Long starPlatId;

    /**
     * 结算单明细主键ID
     */
    private Long id;

    /**
     * 直播商品主键ID
     */
    private Long liveCommodityId;

    /**
     * 商品ID
     */
    @Excel(name = "商品ID", orderNum = "0")
    private String commodityId;

    /**
     * 商品名称
     */
    @Excel(name = "商品名称", orderNum = "2")
    private String commodityName;

    /**
     * 直播时间
     */
    @Excel(name = "直播时间", exportFormat = McnConstant.SHORT_DATE_FORMAT, orderNum = "4")
    @JSONField(format = McnConstant.SHORT_DATE_FORMAT)
    private Date liveDate;

    /**
     * 直播平台
     */
    private String livePlatform;

    /**
     * 佣金比例
     */
    @Excel(name = "佣金比例", orderNum = "5", suffix = "%")
    private BigDecimal commissionRate;

    /**
     * 结算件数
     */
    @Excel(name = "结算件数", orderNum = "6")
    private BigDecimal settlementQty;

    /**
     * 结算单价
     */
    @Excel(name = "结算单价", type = 10, orderNum = "7")
    private BigDecimal settlementPrice;

    /**
     * 成交金额（结算）
     */
    @Excel(name = "成交金额（结算）", type = 10, orderNum = "8")
    private BigDecimal realAmount;

    /**
     * 结算金额
     */
    @Excel(name = "结算金额", type = 10, orderNum = "9")
    private BigDecimal settlementAmount;

    /**
     * 结算佣金
     */
    @Excel(name = "结算佣金", type = 10, orderNum = "10")
    private BigDecimal settlementCommission;

    /**
     * 关联的收入合同ID
     */
    private Long incomeContractId;

    /**
     * 关联的收入合同编号
     */
    @Excel(name = "收入合同编号", orderNum = "1")
    private String incomeContractCode;

    /**
     * 备注
     */
    @Excel(name = "备注", orderNum = "12")
    private String remark;


    /**
     * 创建时间
     */
    @Excel(name = "创建时间", exportFormat = McnConstant.LONG_DATE_FORMAT, orderNum = "11")
    private Date createDate;

    /**
     * 直播平台名称
     */
    @Excel(name = "直播平台", orderNum = "3")
    private String livePlatformName;

    private Long liveSettlementCommodityId;
}
